Skip to content

{tools}[gfbf/2024a] MLflow v2.22.4#24951

Merged
ocaisa merged 1 commit intoeasybuilders:developfrom
lexming:20251221174220_new_pr_MLflow2224
Jan 13, 2026
Merged

{tools}[gfbf/2024a] MLflow v2.22.4#24951
ocaisa merged 1 commit intoeasybuilders:developfrom
lexming:20251221174220_new_pr_MLflow2224

Conversation

@lexming
Copy link
Copy Markdown
Contributor

@lexming lexming commented Dec 21, 2025

(created using eb --new-pr)

@lexming lexming added the update label Dec 21, 2025
@github-actions github-actions Bot added the 2024a issues & PRs related to 2024a common toolchains label Dec 21, 2025
@github-actions
Copy link
Copy Markdown

Updated software MLflow-2.22.4-gfbf-2024a.eb

Diff against MLflow-2.18.0-gfbf-2023b.eb

easybuild/easyconfigs/m/MLflow/MLflow-2.18.0-gfbf-2023b.eb

diff --git a/easybuild/easyconfigs/m/MLflow/MLflow-2.18.0-gfbf-2023b.eb b/easybuild/easyconfigs/m/MLflow/MLflow-2.22.4-gfbf-2024a.eb
index 40a5ed9761..4ad4f563e7 100644
--- a/easybuild/easyconfigs/m/MLflow/MLflow-2.18.0-gfbf-2023b.eb
+++ b/easybuild/easyconfigs/m/MLflow/MLflow-2.22.4-gfbf-2024a.eb
@@ -1,106 +1,110 @@
 easyblock = 'PythonBundle'
 
 name = 'MLflow'
-version = '2.18.0'
+version = '2.22.4'
 
 homepage = 'https://mlflow.org'
 description = """MLflow is a platform to streamline machine learning development, including tracking experiments,
 packaging code into reproducible runs, and sharing and deploying models."""
 
-toolchain = {'name': 'gfbf', 'version': '2023b'}
+toolchain = {'name': 'gfbf', 'version': '2024a'}
 
-builddependencies = [
-    ('binutils', '2.40'),
-    ('hatchling', '1.18.0'),
-    ('poetry', '1.6.1'),
-]
 dependencies = [
-    ('Python', '3.11.5'),
-    ('Python-bundle-PyPI', '2023.10'),
-    ('GitPython', '3.1.42'),
-    ('SciPy-bundle', '2023.11'),
-    ('matplotlib', '3.8.2'),
-    ('scikit-learn', '1.4.0'),
-    ('PyYAML', '6.0.1'),
-    ('SQLAlchemy', '2.0.29'),
-    ('protobuf-python', '4.25.3'),
-    ('Flask', '3.0.0'),
-    ('Arrow', '16.1.0'),
-    ('Markdown', '3.6'),
-    ('Deprecated', '1.2.14'),
+    ('Python', '3.12.3'),
+    ('SciPy-bundle', '2024.05'),
+    ('Arrow', '17.0.0'),
+    ('Deprecated', '1.2.18'),
+    ('Flask', '3.0.3'),
+    ('GitPython', '3.1.43'),
+    ('googleapis-python', '2025.03'),
+    ('Markdown', '3.7'),
+    ('matplotlib', '3.9.2'),
+    ('protobuf-python', '5.28.0'),
+    ('pydantic', '2.9.1'),
+    ('PyYAML', '6.0.2'),
+    ('scikit-learn', '1.5.2'),
+    ('SQLAlchemy', '2.0.36'),
 ]
 
+exts_default_options = {
+    'source_tmpl': SOURCE_PY3_WHL,
+}
+
 exts_list = [
-    ('pyasn1-modules', '0.4.1', {
-        'source_tmpl': 'pyasn1_modules-%(version)s.tar.gz',
-        'checksums': ['c28e2dbf9c06ad61c71a075c7e0f9fd0f1b0bb2d2ad4377f240d33ac2ab60a7c'],
+    ('cachetools', '5.5.0', {
+        'checksums': ['02134e8439cdc2ffb62023ce1debca2944c3f289d66bb17ead3ab3dede74b292'],
     }),
-    ('rsa', '4.9', {
-        'checksums': ['e38464a49c6c85d7f1351b0126661487a7e0a14a50f1675ec50eb34d4f20ef21'],
+    ('docker', '7.1.0', {
+        'checksums': ['c96b93b7f0a746f9e77d325bcfb87422a3d8bd4f03136ae8a85b37f1898d5fc0'],
     }),
-    ('google-auth', '2.35.0', {
-        'modulename': 'google.auth',
-        'source_tmpl': 'google_auth-%(version)s.tar.gz',
-        'checksums': ['f4c64ed4e01e8e8b646ef34c018f8bf3338df0c8e37d8b3bba40e7f574a3278a'],
+    ('sniffio', '1.3.1', {
+        'checksums': ['2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2'],
     }),
-    ('sqlparse', '0.5.1', {
-        'checksums': ['bb6b4df465655ef332548e24f08e205afc81b9ab86cb1c45657a7ff173a3a00e'],
+    ('anyio', '4.9.0', {
+        'checksums': ['9f76d541cad6e36af7beb62e978876f3b41e3e04f2c1fbf0884604c0a9c4d93c'],
     }),
-    ('opentelemetry_semantic_conventions', '0.48b0', {
-        'modulename': False,
-        'source_tmpl': '%(name)s-%(version)s-py3-none-any.whl',
-        'checksums': ['a0de9f45c413a8669788a38569c7e0a11ce6ce97861a628cca785deecdc32a1f'],
+    ('starlette', '0.50.0', {
+        'checksums': ['9e5391843ec9b6e472eed1365a78c8098cfceb7a74bfd4d6b1c0c0095efb3bca'],
     }),
-    ('opentelemetry_sdk', '1.27.0', {
-        'modulename': 'opentelemetry.sdk',
-        'source_tmpl': '%(name)s-%(version)s-py3-none-any.whl',
-        'checksums': ['365f5e32f920faf0fd9e14fdfd92c086e317eaa5f860edba9cdc17a380d9197d'],
+    ('annotated_doc', '0.0.4', {
+        'checksums': ['571ac1dc6991c450b25a9c2d84a3705e2ae7a53467b5d111c24fa8baabbed320'],
     }),
-    ('opentelemetry_api', '1.27.0', {
-        'modulename': 'opentelemetry',
-        'source_tmpl': '%(name)s-%(version)s-py3-none-any.whl',
-        'checksums': ['953d5871815e7c30c81b56d910c707588000fff7a3ca1c73e6531911d53065e7'],
+    ('fastapi', '0.126.0', {
+        'checksums': ['c9330b9731e3bd2caae0a00e76353f86adbf592c5a25649a1682f3a92aeaff41'],
     }),
-    ('databricks_sdk', '0.36.0', {
-        'modulename': 'databricks.sdk',
-        'checksums': ['d8c46348cbd3e0b56991a6b7a59d7a6e0437947f6387bef832e6fe092e2dd427'],
+    ('graphql_relay', '3.2.0', {
+        'checksums': ['c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5'],
     }),
-    ('cachetools', '5.5.0', {
-        'checksums': ['2cc24fb4cbe39633fb7badd9db9ca6295d766d9c2995f245725a46715d050f2a'],
+    ('graphql_core', '3.2.7', {
+        'modulename': 'graphql',
+        'checksums': ['17fc8f3ca4a42913d8e24d9ac9f08deddf0a0b2483076575757f6c412ead2ec0'],
     }),
-    ('graphql-relay', '3.2.0', {
-        'checksums': ['1ff1c51298356e481a0be009ccdff249832ce53f30559c1338f22a0e0d17250c'],
+    ('graphene', '3.4.3', {
+        'source_tmpl': SOURCE_WHL,
+        'checksums': ['820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71'],
     }),
-    ('graphql_core', '3.2.5', {
-        'modulename': 'graphql',
-        'checksums': ['e671b90ed653c808715645e3998b7ab67d382d55467b7e2978549111bbabf8d5'],
+    ('gunicorn', '23.0.0', {
+        'checksums': ['ec400d38950de4dfd418cff8328b2c8faed0edb0d517d3394e457c317908ca4d'],
     }),
-    ('graphene', '3.4.1', {
-        'checksums': ['828a8d7b1bce450566a72cc8733716c20f3acfc659960de73dd38f46dc302040'],
+    ('opentelemetry_semantic_conventions', '0.57b0', {
+        'modulename': False,
+        'checksums': ['757f7e76293294f124c827e514c2a3144f191ef175b069ce8d1211e1e38e9e78'],
     }),
-    ('alembic', '1.14.0', {
-        'checksums': ['b00892b53b3642d0b8dbedba234dbf1924b69be83a9a769d5a624b01094e304b'],
+    ('opentelemetry_sdk', '1.36.0', {
+        'modulename': 'opentelemetry.sdk',
+        'checksums': ['19fe048b42e98c5c1ffe85b569b7073576ad4ce0bcb6e9b4c6a39e890a6c45fb'],
     }),
-    ('docker', '7.1.0', {
-        'checksums': ['ad8c70e6e3f8926cb8a92619b832b4ea5299e2831c14284663184e200546fa6c'],
+    ('opentelemetry_api', '1.36.0', {
+        'modulename': 'opentelemetry',
+        'checksums': ['02f20bcacf666e1333b6b1f04e647dc1d5111f86b8e510238fcc56d7762cda8c'],
     }),
-    ('gunicorn', '23.0.0', {
-        'checksums': ['f014447a0101dc57e294f6c18ca6b40227a4c90e9bdb586042628030cba004ec'],
+    ('databricks_sdk', '0.72.0', {
+        'modulename': 'databricks.sdk',
+        'checksums': ['86f6a6c8ad5cc84a66d394f2151bfd326a207e11d83eb943cb8a447c762b905c'],
+    }),
+    ('sqlparse', '0.5.5', {
+        'checksums': ['12a08b3bf3eec877c519589833aed092e2444e68240a3577e8e26148acc7b1ba'],
+    }),
+    ('h11', '0.16.0', {
+        'checksums': ['63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86'],
+    }),
+    ('uvicorn', '0.38.0', {
+        'checksums': ['48c0afd214ceb59340075b4a052ea1ee91c16fbc2a9b1469cca0e54566977b02'],
     }),
     ('mlflow_skinny', version, {
-        'modulename': False,
-        'checksums': ['87e83f56c362a520196b2f0292b24efdca7f8b2068a6a6941f2ec9feb9bfd914'],
+        'modulename': 'mlflow',
+        'checksums': ['3622115f53806d99fc42b0c2e45f225b16948584feeec7f233e484f08fe6c7f2'],
     }),
     ('mlflow', version, {
-        'checksums': ['90f0d04b02e35c0f2fccc88e892e37b84871cb4f766acd3ef904c1c30be63ee3'],
+        'checksums': ['c37b312060737cc9197c4a956c730fa6c292580787fe464efe736c339e87649a'],
     }),
 ]
 
 sanity_check_paths = {
-    'files': ['bin/%(namelower)s'],
-    'dirs': ['lib/python%(pyshortver)s/site-packages/%(namelower)s'],
+    'files': ['bin/fastapi', 'bin/gunicorn', 'bin/mlflow', 'bin/sqlformat', 'bin/uvicorn'],
+    'dirs': ['lib/python%(pyshortver)s/site-packages/mlflow'],
 }
 
-sanity_check_commands = ['%(namelower)s --help']
+sanity_check_commands = ['mlflow --help']
 
 moduleclass = 'tools'
Diff against MLflow-2.10.2-gfbf-2023a.eb

easybuild/easyconfigs/m/MLflow/MLflow-2.10.2-gfbf-2023a.eb

diff --git a/easybuild/easyconfigs/m/MLflow/MLflow-2.10.2-gfbf-2023a.eb b/easybuild/easyconfigs/m/MLflow/MLflow-2.22.4-gfbf-2024a.eb
index 9e602037b7..4ad4f563e7 100644
--- a/easybuild/easyconfigs/m/MLflow/MLflow-2.10.2-gfbf-2023a.eb
+++ b/easybuild/easyconfigs/m/MLflow/MLflow-2.22.4-gfbf-2024a.eb
@@ -1,60 +1,110 @@
 easyblock = 'PythonBundle'
 
 name = 'MLflow'
-version = '2.10.2'
+version = '2.22.4'
 
 homepage = 'https://mlflow.org'
 description = """MLflow is a platform to streamline machine learning development, including tracking experiments,
 packaging code into reproducible runs, and sharing and deploying models."""
 
-toolchain = {'name': 'gfbf', 'version': '2023a'}
+toolchain = {'name': 'gfbf', 'version': '2024a'}
 
-builddependencies = [
-    ('binutils', '2.40'),
-]
 dependencies = [
-    ('Python', '3.11.3'),
-    ('Python-bundle-PyPI', '2023.06'),
-    ('GitPython', '3.1.40'),
-    ('SciPy-bundle', '2023.07'),
-    ('matplotlib', '3.7.2'),
-    ('scikit-learn', '1.3.1'),
-    ('PyYAML', '6.0'),
-    ('SQLAlchemy', '2.0.25'),
-    ('protobuf-python', '4.24.0'),
-    ('Flask', '2.3.3'),
-    ('Arrow', '14.0.1'),
+    ('Python', '3.12.3'),
+    ('SciPy-bundle', '2024.05'),
+    ('Arrow', '17.0.0'),
+    ('Deprecated', '1.2.18'),
+    ('Flask', '3.0.3'),
+    ('GitPython', '3.1.43'),
+    ('googleapis-python', '2025.03'),
+    ('Markdown', '3.7'),
+    ('matplotlib', '3.9.2'),
+    ('protobuf-python', '5.28.0'),
+    ('pydantic', '2.9.1'),
+    ('PyYAML', '6.0.2'),
+    ('scikit-learn', '1.5.2'),
+    ('SQLAlchemy', '2.0.36'),
 ]
 
+exts_default_options = {
+    'source_tmpl': SOURCE_PY3_WHL,
+}
+
 exts_list = [
-    ('docker', '7.0.0', {
-        'checksums': ['323736fb92cd9418fc5e7133bc953e11a9da04f4483f828b527db553f1e7e5a3'],
+    ('cachetools', '5.5.0', {
+        'checksums': ['02134e8439cdc2ffb62023ce1debca2944c3f289d66bb17ead3ab3dede74b292'],
+    }),
+    ('docker', '7.1.0', {
+        'checksums': ['c96b93b7f0a746f9e77d325bcfb87422a3d8bd4f03136ae8a85b37f1898d5fc0'],
+    }),
+    ('sniffio', '1.3.1', {
+        'checksums': ['2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2'],
+    }),
+    ('anyio', '4.9.0', {
+        'checksums': ['9f76d541cad6e36af7beb62e978876f3b41e3e04f2c1fbf0884604c0a9c4d93c'],
+    }),
+    ('starlette', '0.50.0', {
+        'checksums': ['9e5391843ec9b6e472eed1365a78c8098cfceb7a74bfd4d6b1c0c0095efb3bca'],
+    }),
+    ('annotated_doc', '0.0.4', {
+        'checksums': ['571ac1dc6991c450b25a9c2d84a3705e2ae7a53467b5d111c24fa8baabbed320'],
+    }),
+    ('fastapi', '0.126.0', {
+        'checksums': ['c9330b9731e3bd2caae0a00e76353f86adbf592c5a25649a1682f3a92aeaff41'],
+    }),
+    ('graphql_relay', '3.2.0', {
+        'checksums': ['c9b22bd28b170ba1fe674c74384a8ff30a76c8e26f88ac3aa1584dd3179953e5'],
+    }),
+    ('graphql_core', '3.2.7', {
+        'modulename': 'graphql',
+        'checksums': ['17fc8f3ca4a42913d8e24d9ac9f08deddf0a0b2483076575757f6c412ead2ec0'],
+    }),
+    ('graphene', '3.4.3', {
+        'source_tmpl': SOURCE_WHL,
+        'checksums': ['820db6289754c181007a150db1f7fff544b94142b556d12e3ebc777a7bf36c71'],
+    }),
+    ('gunicorn', '23.0.0', {
+        'checksums': ['ec400d38950de4dfd418cff8328b2c8faed0edb0d517d3394e457c317908ca4d'],
+    }),
+    ('opentelemetry_semantic_conventions', '0.57b0', {
+        'modulename': False,
+        'checksums': ['757f7e76293294f124c827e514c2a3144f191ef175b069ce8d1211e1e38e9e78'],
+    }),
+    ('opentelemetry_sdk', '1.36.0', {
+        'modulename': 'opentelemetry.sdk',
+        'checksums': ['19fe048b42e98c5c1ffe85b569b7073576ad4ce0bcb6e9b4c6a39e890a6c45fb'],
+    }),
+    ('opentelemetry_api', '1.36.0', {
+        'modulename': 'opentelemetry',
+        'checksums': ['02f20bcacf666e1333b6b1f04e647dc1d5111f86b8e510238fcc56d7762cda8c'],
     }),
-    ('entrypoints', '0.4', {
-        'checksums': ['b706eddaa9218a19ebcd67b56818f05bb27589b1ca9e8d797b74affad4ccacd4'],
+    ('databricks_sdk', '0.72.0', {
+        'modulename': 'databricks.sdk',
+        'checksums': ['86f6a6c8ad5cc84a66d394f2151bfd326a207e11d83eb943cb8a447c762b905c'],
     }),
-    ('gunicorn', '21.2.0', {
-        'checksums': ['88ec8bff1d634f98e61b9f65bc4bf3cd918a90806c6f5c48bc5603849ec81033'],
+    ('sqlparse', '0.5.5', {
+        'checksums': ['12a08b3bf3eec877c519589833aed092e2444e68240a3577e8e26148acc7b1ba'],
     }),
-    ('Markdown', '3.5.2', {
-        'checksums': ['e1ac7b3dc550ee80e602e71c1d168002f062e49f1b11e26a36264dafd4df2ef8'],
+    ('h11', '0.16.0', {
+        'checksums': ['63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86'],
     }),
-    ('querystring_parser', '1.2.4', {
-        'checksums': ['644fce1cffe0530453b43a83a38094dbe422ccba8c9b2f2a1c00280e14ca8a62'],
+    ('uvicorn', '0.38.0', {
+        'checksums': ['48c0afd214ceb59340075b4a052ea1ee91c16fbc2a9b1469cca0e54566977b02'],
     }),
-    ('sqlparse', '0.4.4', {
-        'checksums': ['d446183e84b8349fa3061f0fe7f06ca94ba65b426946ffebe6e3e8295332420c'],
+    ('mlflow_skinny', version, {
+        'modulename': 'mlflow',
+        'checksums': ['3622115f53806d99fc42b0c2e45f225b16948584feeec7f233e484f08fe6c7f2'],
     }),
     ('mlflow', version, {
-        'checksums': ['3ddf32ba2c01dac79e4d077d4bb9ed46d82a082dc99223207d562c7ee6bee671'],
+        'checksums': ['c37b312060737cc9197c4a956c730fa6c292580787fe464efe736c339e87649a'],
     }),
 ]
 
 sanity_check_paths = {
-    'files': ['bin/%(namelower)s'],
-    'dirs': ['lib/python%(pyshortver)s/site-packages/%(namelower)s'],
+    'files': ['bin/fastapi', 'bin/gunicorn', 'bin/mlflow', 'bin/sqlformat', 'bin/uvicorn'],
+    'dirs': ['lib/python%(pyshortver)s/site-packages/mlflow'],
 }
 
-sanity_check_commands = ['%(namelower)s --help']
+sanity_check_commands = ['mlflow --help']
 
 moduleclass = 'tools'

@lexming
Copy link
Copy Markdown
Contributor Author

lexming commented Dec 21, 2025

@boegelbot please test @ jsc-zen3

@boegelbot
Copy link
Copy Markdown
Collaborator

@lexming: Request for testing this PR well received on jsczen3l1.int.jsc-zen3.fz-juelich.de

PR test command 'if [[ develop != 'develop' ]]; then EB_BRANCH=develop ./easybuild_develop.sh 2> /dev/null 1>&2; EB_PREFIX=/home/boegelbot/easybuild/develop source init_env_easybuild_develop.sh; fi; EB_PR=24951 EB_ARGS= EB_CONTAINER= EB_REPO=easybuild-easyconfigs EB_BRANCH=develop /opt/software/slurm/bin/sbatch --job-name test_PR_24951 --ntasks=8 ~/boegelbot/eb_from_pr_upload_jsc-zen3.sh' executed!

  • exit code: 0
  • output:
Submitted batch job 9274

Test results coming soon (I hope)...

Details

- notification for comment with ID 3679167689 processed

Message to humans: this is just bookkeeping information for me,
it is of no use to you (unless you think I have a bug, which I don't).

@boegelbot
Copy link
Copy Markdown
Collaborator

Test report by @boegelbot
SUCCESS
Build succeeded for 1 out of 1 (total: 6 mins 29 secs) (1 easyconfigs in total)
jsczen3c1.int.jsc-zen3.fz-juelich.de - Linux Rocky Linux 9.7, x86_64, AMD EPYC-Milan Processor (zen3), Python 3.9.23
See https://gist.github.com/boegelbot/c92abbbee9250668201decc8c6f08359 for a full test report.

@ocaisa
Copy link
Copy Markdown
Member

ocaisa commented Jan 13, 2026

Test report by @ocaisa
SUCCESS
Build succeeded for 1 out of 1 (total: 1 min 48 secs) (1 easyconfigs in total)
aoc-laptop - Linux Ubuntu 24.04.3 LTS (Noble Numbat), AArch64, UNKNOWN, Python 3.13.4
See https://gist.github.com/ocaisa/cbf837d8c6274d3469b4d7526a5d596e for a full test report.

Copy link
Copy Markdown
Member

@ocaisa ocaisa left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@ocaisa ocaisa merged commit 0f50e96 into easybuilders:develop Jan 13, 2026
8 checks passed
@lexming lexming deleted the 20251221174220_new_pr_MLflow2224 branch January 13, 2026 15:18
@boegel boegel added this to the next release (5.2.1) milestone Feb 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

2024a issues & PRs related to 2024a common toolchains update

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants